package edu.scau.cxq.gp.service;

import com.github.pagehelper.PageInfo;
import edu.scau.cxq.gp.entity.SystemNotice;
import edu.scau.cxq.gp.entity.vo.NoticeVO;
import edu.scau.cxq.gp.entity.vo.UserVO;

import java.util.List;

public interface SystemNoticeService {
    /**
     * 获取系统公告分页列表
     * @return 系统公告列表
     */
    PageInfo<SystemNotice> getNoticeList(Integer currentPage, Integer size, NoticeVO noticeVO);

    /**
     * 获取系统公告列表
     * @return 系统公告列表
     */
    List<SystemNotice> getSystemNoticeList();

    /**
     * 根据id获取系统公告
     * @param id 系统公告id
     * @return 系统公告
     */
    SystemNotice getSystemNoticeById(int id);

    /**
     * 创建系统公告
     * @param systemNotice 系统公告
     * @return 是否创建成功
     */
    boolean createSystemNotice(SystemNotice systemNotice);

    /**
     * 更新系统公告
     * @param systemNotice 系统公告
     * @return 是否更新成功
     */
    boolean updateSystemNotice(SystemNotice systemNotice);

    /**
     * 删除系统公告
     * @param id 系统公告id
     * @return 是否删除成功
     */
    boolean deleteSystemNotice(int id);

    SystemNotice getNotice(int id);
}
